FEXP Solver  1.0.0.0
CFEXPCalculation Class Reference

It represents the class implementing the explicit computation. More...

#include <FEXPCalculation.h>

Inheritance diagram for CFEXPCalculation:
Collaboration diagram for CFEXPCalculation:

Public Member Functions

 CFEXPCalculation (Ptr< ICFEXPDataModelContIntf > model, Ptr< ICFEXPResultExport > exporter, std::function< void()> updater, t_Searcher searcher, bool network=false)
 
virtual size_t SimulationTimeIncrement (size_t thread_id) override
 It sets the numeber of an time step increment. More...
 
virtual bool CheckEnd (size_t thread_id) override
 It checks the end of numerical simulation. More...
 
virtual void PrepareDataForNewTimeLevel (size_t thread_id) override
 It prepares the data for the new time increment (set to default state). More...
 
virtual void UpdateModelMapping (size_t thread_id) override
 It updates the map of FE mesh for detection of contact. More...
 
virtual void GlobalToLocalTransformation (size_t thread_id) override
 It computes transformation from a global frame to a local frame of FEs. More...
 
virtual void CalculateForces (size_t thread_id) override
 It computes forces (internal, external, contact). More...
 
virtual void CalculateNewGeometry (size_t thread_id) override
 It computes the new geometry (update of model geometry). More...
 
virtual bool TrySaveResults (size_t thread_id, bool forced=false) override
 It saves the resulting simulation data for the current simulation time. More...
 
virtual void PrintOutResults (size_t thread_id) override
 It prints out appropriate result data from numerical simulation to console window. More...
 
virtual bool ClearResults (size_t thread_id) override
 It clears memory with the current results. More...
 
virtual void StabilityControl (size_t thread_id) override
 It check the stability of an explicit numerical integration of equation of motion (computes stabil time step). More...
 
virtual t_fexpcommon_ct GetCalculatedCriticTimeStep () override
 It gives computed minimal time step. More...
 
virtual void SetNewTimeStep (t_fexpcommon_ct dt) override
 It sets the time step. More...
 
- Public Member Functions inherited from ICFEXPExplicitCalcBase
 ICFEXPExplicitCalcBase (Ptr< ICFEXPDataModelContIntf > model, Ptr< ICFEXPResultExport > exporter, std::function< void()> updater, t_Searcher searcher)
 
virtual ~ICFEXPExplicitCalcBase ()
 

Protected Member Functions

void save_results_and_export (size_t thread_id, Ptr< ICFEXPDataModelContIntf > reslt_cont)
 
- Protected Member Functions inherited from ICFEXPExplicitCalcBase
Ptr< ICFEXPDataModelContIntfget_model ()
 
void update_geometry_map ()
 
t_SearchResult search_close_nodes (t_SearchInput min, t_SearchInput max)
 
Ptr< ICFEXPResultExportget_result_exporter ()
 

Additional Inherited Members

- Public Types inherited from ICFEXPExplicitCalcBase
using t_SearchInput = const std::vector< t_fexpcommon_ct >
 
using t_SearchResult = Ptr< std::vector< Ptr< ICFEXPElementNodeBase > >>
 
using t_Searcher = std::function< t_SearchResult(t_SearchInput &min_bound, t_SearchInput &max_bound)>
 
- Static Public Member Functions inherited from ICFEXPExplicitCalcBase
static std::string GetCalcBehavOutString (Ptr< ICFEXPElementNodeBase > node, size_t dof)
 It composes formated output string for the monitoring of the FEXP solver behaviour. More...
 

Detailed Description

It represents the class implementing the explicit computation.

Constructor & Destructor Documentation

◆ CFEXPCalculation()

CFEXPCalculation::CFEXPCalculation ( Ptr< ICFEXPDataModelContIntf model,
Ptr< ICFEXPResultExport exporter,
std::function< void()>  updater,
t_Searcher  searcher,
bool  network = false 
)
inline

Member Function Documentation

◆ CalculateForces()

void CFEXPCalculation::CalculateForces ( size_t  thread_id)
overridevirtual

It computes forces (internal, external, contact).

Implements ICFEXPExplicitCalcBase.

◆ CalculateNewGeometry()

void CFEXPCalculation::CalculateNewGeometry ( size_t  thread_id)
overridevirtual

It computes the new geometry (update of model geometry).

Implements ICFEXPExplicitCalcBase.

◆ CheckEnd()

bool CFEXPCalculation::CheckEnd ( size_t  thread_id)
overridevirtual

It checks the end of numerical simulation.

Implements ICFEXPExplicitCalcBase.

◆ ClearResults()

bool CFEXPCalculation::ClearResults ( size_t  thread_id)
overridevirtual

It clears memory with the current results.

Implements ICFEXPExplicitCalcBase.

◆ GetCalculatedCriticTimeStep()

t_fexpcommon_ct CFEXPCalculation::GetCalculatedCriticTimeStep ( )
overridevirtual

It gives computed minimal time step.

Implements ICFEXPExplicitCalcBase.

◆ GlobalToLocalTransformation()

void CFEXPCalculation::GlobalToLocalTransformation ( size_t  thread_id)
overridevirtual

It computes transformation from a global frame to a local frame of FEs.

Implements ICFEXPExplicitCalcBase.

◆ PrepareDataForNewTimeLevel()

void CFEXPCalculation::PrepareDataForNewTimeLevel ( size_t  thread_id)
overridevirtual

It prepares the data for the new time increment (set to default state).

Implements ICFEXPExplicitCalcBase.

◆ PrintOutResults()

void CFEXPCalculation::PrintOutResults ( size_t  thread_id)
overridevirtual

It prints out appropriate result data from numerical simulation to console window.

Implements ICFEXPExplicitCalcBase.

◆ save_results_and_export()

void CFEXPCalculation::save_results_and_export ( size_t  thread_id,
Ptr< ICFEXPDataModelContIntf reslt_cont 
)
protected

◆ SetNewTimeStep()

void CFEXPCalculation::SetNewTimeStep ( t_fexpcommon_ct  dt)
overridevirtual

It sets the time step.

Implements ICFEXPExplicitCalcBase.

◆ SimulationTimeIncrement()

size_t CFEXPCalculation::SimulationTimeIncrement ( size_t  thread_id)
overridevirtual

It sets the numeber of an time step increment.

Implements ICFEXPExplicitCalcBase.

◆ StabilityControl()

void CFEXPCalculation::StabilityControl ( size_t  thread_id)
overridevirtual

It check the stability of an explicit numerical integration of equation of motion (computes stabil time step).

Implements ICFEXPExplicitCalcBase.

◆ TrySaveResults()

bool CFEXPCalculation::TrySaveResults ( size_t  thread_id,
bool  forced = false 
)
overridevirtual

It saves the resulting simulation data for the current simulation time.

Implements ICFEXPExplicitCalcBase.

◆ UpdateModelMapping()

void CFEXPCalculation::UpdateModelMapping ( size_t  thread_id)
overridevirtual

It updates the map of FE mesh for detection of contact.

Implements ICFEXPExplicitCalcBase.


The documentation for this class was generated from the following files: